
package com.foreveross.mofang.serviceconsole.application.core;

import java.util.Map;

import org.dayatang.querychannel.Page;

import com.foreveross.mofang.serviceconsole.application.dto.NodeRegisterDTO;

/**
 * 结点报道基础设施实现层接口
 * 
 * @author fb
 *
 */
public interface NodeRegisterApplication {

	/**
	 * 根据id获取结点信息
	 * 
	 * @param id
	 * @return
	 */
	NodeRegisterDTO getNodeRegister(Long id);
	
	/**
	 * 结点注册
	 * 
	 * @param nodeRegister
	 * @return
	 */
	Map<String, Object> nodeRegister(NodeRegisterDTO nodeRegister);
	
	/**
	 * 根据条件查询所有在线结点
	 * 
	 * @param nodeRegister
	 * @param currentPage
	 * @param pageSize
	 * @return
	 */
	Page<NodeRegisterDTO> pageQueryNewestNode(NodeRegisterDTO nodeRegister, int currentPage, int pageSize);
	
	/**
	 * 根据条件查询所有结点
	 * 
	 * @param nodeRegister
	 * @param currentPage
	 * @param pageSize
	 * @return
	 */
	Page<NodeRegisterDTO> pageQueryNode(String nodeSn, int currentPage, int pageSize);
	
	/**
	 * 结点心跳
	 * 
	 */
	void heartbeat(String nodeSn);

}

